package sicau.carManager.entity;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import sicau.carManager.Util.ExcelUtil.LocalDateTimeConverter;

/**
 * <p>
 * 
 * </p>
 *
 * @author ITcz
 * @since 2021-02-05
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="ViolationInformation对象", description="加set方法，因为它是Excel导出类")
public class ViolationInformation implements Serializable {

    private static final long serialVersionUID=1L;

    @TableId(value = "id", type = IdType.AUTO)
    @ExcelIgnore
    private Integer id;

    @ApiModelProperty(value = "违停车牌号")
    @ExcelProperty(value = "违停车牌号")
    private String licensePlateNumber;

    @ApiModelProperty(value = "联系电话（可能为空）")
    @ExcelProperty(value = "联系电话（可能为空）")
    private String phoneNumber;

//    @ApiModelProperty(value = "违停次数")
//    private Integer violationNumber;

    /**
    * 使用自定义日期转化器
    * */
    @ApiModelProperty(value = "违停时间")
    @ExcelProperty(value = "违停时间", converter = LocalDateTimeConverter.class)
    private LocalDateTime time;

    @ApiModelProperty(value = "违停地点")
    @ExcelProperty(value = "违停地点")
    private String place;

    @ApiModelProperty(value = "违停原因")
    @ExcelProperty(value = "违停原因")
    private String reason;

    @ApiModelProperty(value = "违停照片Url")
    @ExcelProperty(value = "违停照片Url")
    private String imageUrl;

    @ApiModelProperty(value = "违停图片名字UUID")
    @ExcelProperty(value = "违停图片名字UUID")
    private String imageName;

    @ApiModelProperty(value = "记录员姓名")
    @ExcelProperty(value = "记录员姓名")
    private String recorderName;

    @ApiModelProperty(value = "记录员工号")
    @ExcelProperty(value = "记录员工号")
    private String recorderNumber;

    @ApiModelProperty(value = "校区")
    @ExcelProperty(value = "校区")
    private String campus;

    @ExcelIgnore
    private LocalDateTime createTime;

    @ExcelIgnore
    private LocalDateTime updateTime;

    public void setId(Integer id) {
        this.id = id;
    }

    public void setLicensePlateNumber(String licensePlateNumber) {
        this.licensePlateNumber = licensePlateNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }


    public void setTime(LocalDateTime time) {
        this.time = time;
    }

    public void setPlace(String place) {
        this.place = place;
    }

    public void setReason(String reason) {
        this.reason = reason;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public void setImageName(String imageName) {
        this.imageName = imageName;
    }

    public void setRecorderName(String recorderName) {
        this.recorderName = recorderName;
    }

    public void setRecorderNumber(String recorderNumber) {
        this.recorderNumber = recorderNumber;
    }

    public void setCampus(String campus) {
        this.campus = campus;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }
}
